Version Management
# List Versions
Request
GET /openapi/delivery/releases?projectKey=<projectKey>&pageNum=<pageNum>&pageSize=<pageSize>
Query Parameter Description
| Parameter Name | Type | Description | Required |
|---|---|---|---|
projectKey | string | Project Key | Yes |
pageNum | int | Page number | Yes |
pageSize | int | Page size | Yes |
Success Response Description
| Parameter Name | Type | Description |
|---|---|---|
list | []DeliveryVersionInfo | Version list |
total | int | Total count |
DeliveryVersionInfo Parameter Description
| Parameter Name | Type | Description |
|---|---|---|
id | string | Version ID |
version_name | string | Version name |
source | string | Source: manual, from_env, from_version |
type | string | Type, K8SYaml or HelmChart |
status | string | Status: success, failed, creating, retrying |
labels | []string | Labels |
description | string | Description |
created_by | string | Creator |
created_time | int64 | Creation time |
Success Response Example
Details
{
"list": [
{
"id": "66287b110b8b8a631910f5ae",
"version_name": "v13",
"type": "K8SYaml",
"source": "manual",
"status": "success",
"labels": [],
"description": "labore id amet",
"created_by": "patrick",
"create_time": 1713928977
},
{
"id": "662751047ac26dae6a3a1472",
"version_name": "v12",
"type": "K8SYaml",
"source": "from_env",
"status": "failed",
"labels": [],
"description": "labore id amet",
"created_by": "patrick",
"create_time": 1713852676
}
],
"total": 12
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# Get Version Details
Request
GET /openapi/delivery/releases/:id
Path Parameter Description
| Parameter Name | Type | Description | Required |
|---|---|---|---|
id | string | Version ID | Yes |
Success Response Description
| Parameter Name | Type | Description |
|---|---|---|
id | string | Version ID |
version_name | string | Version name |
project_key | string | Project key |
source | string | Source: manual, from_env, from_version |
env_name | string | Environment name, valid when source is from_env/from_version |
production | bool | Whether production env, valid when source is from_env/version |
type | string | Type, K8SYaml or HelmChart |
status | string | Status: success, failed, creating, retrying |
error | string | Error message |
labels | []string | Labels |
description | string | Description |
image_registry_id | string | Image registry ID |
chart_repo_name | string | Chart repo name, valid when type is HelmChart |
services | []DeliveryVersionService | Service list |
created_by | string | Creator |
created_time | int64 | Creation time |
DeliveryVersionService Parameter Description
| Parameter Name | Type | Description |
|---|---|---|
service_name | string | Service name |
chart_name | string | Chart name |
chart_version | string | Chart version |
chart_status | string | Chart push status |
yaml_content | string | Yaml content |
images | DeliveryVersionImage | Image list |
error | string | Push error message |
DeliveryVersionImage Parameter Description
| Parameter Name | Type | Description |
|---|---|---|
container_name | string | Container name |
image_name | string | Image name |
source_image | string | Source image |
source_image_tag | string | Source image tag |
target_image | string | Target image |
target_image_tag | string | Target image tag |
push_image | bool | Whether to push |
status | string | Push status |
error | string | Push error message |
Success Response Example
K8s YAML Project
Details
{
"version": "v7.0.0",
"project_name": "yaml",
"env_name": "dev",
"production": false,
"type": "K8SYaml",
"source": "from_env",
"desc": "",
"labels": [],
"image_registry_id": "683047fe458904519c5f5c80",
"chart_repo_name": "",
"services": [
{
"service_name": "service1",
"chart_name": "",
"original_chart_version": "",
"chart_version": "",
"chart_status": "",
"yaml_content": "apiVersion: apps/v1\nkind: Deployment\nmetadata:\n creationTimestamp: null\n labels:\n abc: \"\"\n app.kubernetes.io/instance: service1\n app.kubernetes.io/name: yaml\n env: dev\n name: service1\nspec:\n replicas: 1\n selector:\n matchLabels:\n app.kubernetes.io/instance: service1\n app.kubernetes.io/name: yaml\n strategy: {}\n template:\n metadata:\n creationTimestamp: null\n labels:\n app.kubernetes.io/instance: service1\n app.kubernetes.io/name: yaml\n spec:\n containers:\n - command:\n - /workspace/service1/\n image: koderover.tencentcloudcr.com/test/service1:v2\n imagePullPolicy: Always\n name: service1\n ports:\n - containerPort: 20221\n protocol: TCP\n resources: {}\nstatus: {}\n\n",
"images": [
{
"container_name": "service1",
"image_name": "service1",
"source_image": "koderover.tencentcloudcr.com/test/service1:20250908142239-3-patrick-01",
"source_image_tag": "20250908142239-3-patrick-01",
"target_image": "koderover.tencentcloudcr.com/test/service1:v2",
"target_image_tag": "v2",
"image_path": null,
"push_image": true,
"status": "passed",
"error": ""
}
],
"error": ""
},
{
"service_name": "service2",
"chart_name": "",
"original_chart_version": "",
"chart_version": "",
"chart_status": "",
"yaml_content": "apiVersion: apps/v1\nkind: Deployment\nmetadata:\n creationTimestamp: null\n labels:\n app.kubernetes.io/instance: service2\n app.kubernetes.io/name: yaml\n name: service2\nspec:\n replicas: 1\n selector:\n matchLabels:\n app.kubernetes.io/instance: service2\n app.kubernetes.io/name: yaml\n strategy: {}\n template:\n metadata:\n creationTimestamp: null\n labels:\n app.kubernetes.io/instance: service2\n app.kubernetes.io/name: yaml\n spec:\n containers:\n - command:\n - /workspace/service2\n image: koderover.tencentcloudcr.com/test/service2:v2\n imagePullPolicy: Always\n name: service2\n ports:\n - containerPort: 20222\n protocol: TCP\n resources: {}\nstatus: {}\n\n",
"images": [
{
"container_name": "service2",
"image_name": "service2",
"source_image": "koderover.tencentcloudcr.com/test/service2:20250908143005-6-main",
"source_image_tag": "20250908143005-6-main",
"target_image": "koderover.tencentcloudcr.com/test/service2:v2",
"target_image_tag": "v2",
"image_path": null,
"push_image": true,
"status": "passed",
"error": ""
}
],
"error": ""
}
],
"status": "success",
"error": "",
"created_by": "lilian",
"created_at": 1757493873,
"deleted_at": 0
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
Helm Chart Project
Details
{
"version": "v1",
"project_name": "multi-chart",
"env_name": "dev",
"production": false,
"type": "HelmChart",
"source": "from_env",
"desc": "",
"labels": [],
"image_registry_id": "683047fe458904519c5f5c80",
"chart_repo_name": "test",
"services": [
{
"service_name": "service2",
"chart_name": "general-chart",
"original_chart_version": "",
"chart_version": "3.4.6",
"chart_status": "passed",
"yaml_content": "a: b\nc: d\nfullnameOverride: service2\nimage:\n repository: koderover.tencentcloudcr.com/koderover-demo/service2\n tag: 123\nimagePullSecretsName: default-registry-secret\nport: 20222\nreplicaCount: 1\nresources:\n limits:\n cpu: 20m\n mem: 20Mi\n requests:\n cpu: 10m\n mem: 10Mi\nx: kk\n",
"images": [
{
"container_name": "service2",
"image_name": "service2",
"source_image": "koderover.tencentcloudcr.com/koderover-demo/service2:latest",
"source_image_tag": "latest",
"target_image": "koderover.tencentcloudcr.com/koderover-demo/service2:123",
"target_image_tag": "123",
"image_path": {
"image": "image.repository",
"tag": "image.tag"
},
"push_image": true,
"status": "passed",
"error": ""
}
],
"error": ""
},
{
"service_name": "service3",
"chart_name": "service3",
"original_chart_version": "",
"chart_version": "3.4.13",
"chart_status": "passed",
"yaml_content": "a: b\nc: d\nfullnameOverride: service3\nimage:\n repository: koderover.tencentcloudcr.com/test/service3\n tag: 123\nimagePullSecretsName: default-registry-secret\nport: 20223\nreplicaCount: 1\nresources:\n limits:\n cpu: 20m\n mem: 20Mi\n requests:\n cpu: 10m\n mem: 10Mi\nx: kk\n",
"images": [
{
"container_name": "service3",
"image_name": "service3",
"source_image": "koderover.tencentcloudcr.com/test/service3:20250711170816-5-lilian01",
"source_image_tag": "20250711170816-5-lilian01",
"target_image": "koderover.tencentcloudcr.com/test/service3:123",
"target_image_tag": "123",
"image_path": {
"image": "image.repository",
"tag": "image.tag"
},
"push_image": true,
"status": "passed",
"error": ""
}
],
"error": ""
},
{
"service_name": "service1",
"chart_name": "general-chart",
"original_chart_version": "",
"chart_version": "1.83",
"chart_status": "passed",
"yaml_content": "a: b\nc: d\nfullnameOverride: service1\nimage:\n repository: koderover.tencentcloudcr.com/koderover-demo/service1\n tag: 123\nimagePullSecretsName: default-registry-secret\nport: 20221\nreplicaCount: 1\nresources:\n limits:\n cpu: 20m\n mem: 20Mi\n requests:\n cpu: 10m\n mem: 10Mi\nx: kk\n",
"images": [
{
"container_name": "service1",
"image_name": "service1",
"source_image": "koderover.tencentcloudcr.com/koderover-demo/service1:latest",
"source_image_tag": "latest",
"target_image": "koderover.tencentcloudcr.com/koderover-demo/service1:123",
"target_image_tag": "123",
"image_path": {
"image": "image.repository",
"tag": "image.tag"
},
"push_image": true,
"status": "passed",
"error": ""
}
],
"error": ""
}
],
"status": "success",
"error": "",
"created_by": "lilian",
"created_at": 1753930701,
"deleted_at": 0
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
# Delete Version
Request
DELETE /openapi/delivery/releases/:id?projectKey=<projectKey>
Path Parameter Description
| Parameter Name | Type | Description | Required |
|---|---|---|---|
id | string | Version ID | Yes |
Query Parameter Description
| Parameter Name | Type | Description | Required |
|---|---|---|---|
projectKey | string | Project Key | Yes |
Success Response Example
{
"message": "success"
}
2
3
# Create Version for K8s YAML Project
Request
POST /openapi/delivery/releases/k8s
Body Parameter Description
| Parameter Name | Type | Description | Required | | ----------------------- | ------------------------------------------------------------------ | -------------------------------------------------------- | | project_key | string | Project Key | | version_name | string | Version name | | source | string | Source: manual, from_env, from_version | | env_name | string | Environment name, valid when source is from_env | | production | bool | Is production env, valid when source is from_env | | original_version_name | string | Original version name, valid when source is from_version | No | | desc | string | Description | | labels | []string | Labels | | image_registry_id | string | Image registry ID | | services | []DeliveryVersionCreateService | Service list |
DeliveryVersionCreateService Parameter Description
| Parameter Name | Type | Description | Required |
|---|---|---|---|
service_name | string | Service name | Yes |
yaml_content | string | Yaml content | No |
images | DeliveryVersionImage | Image list | Yes |
DeliveryVersionImage Parameter Description
| Parameter Name | Type | Description | Required |
|---|---|---|---|
container_name | string | Container name | Yes |
image_name | string | Image name, required when source is manual | No |
source_image | string | Source image, required when source is manual | No |
source_image_tag | string | Source image tag, required when source is manual | No |
target_image | string | Target image | Yes |
target_image_tag | string | Target image tag | Yes |
push_image | bool | Whether to push image | Yes |
Success Response Example
{
"message": "success"
}
2
3
# Create Version for Helm Chart Project
Request
POST /openapi/delivery/releases/helm
Body Parameter Description
| Parameter Name | Type | Description | Required |
|---|---|---|---|
project_key | string | Project Key | Yes |
version_name | string | Version name | Yes |
source | string | Source: manual, from_env, from_version | Yes |
env_name | string | Environment name, valid when source is from_env | No |
production | bool | Is production env, valid when source is from_env | No |
original_version_name | string | Original version name, required when source is from_version | No |
desc | string | Description | No |
labels | []string | Labels | No |
image_registry_id | string | Image registry ID | Yes |
chart_repo_name | string | Chart repository name | Yes |
services | []DeliveryVersionCreateService | Service list | Yes |
DeliveryVersionCreateService Parameter Description
| Parameter Name | Type | Description | Required |
|---|---|---|---|
service_name | string | Service name | Yes |
chart_version | string | Chart version, valid when type=HelmChart | Yes |
yaml_content | string | Values content | No |
images | DeliveryVersionImage | Image list | Yes |
DeliveryVersionImage Parameter Description
| Parameter Name | Type | Description | Required |
|---|---|---|---|
container_name | string | Container name | Yes |
image_name | string | Image name, required when source is manual | No |
source_image | string | Source image, required when source is manual | No |
source_image_tag | string | Source image tag, required when source is manual | No |
target_image | string | Target image | Yes |
target_image_tag | string | Target image tag | Yes |
push_image | bool | Whether to push image | Yes |
Success Response Example
{
"message": "success"
}
2
3
# Retry Create Release
Request
POST /openapi/delivery/releases/retry
Body Parameter Description
| Parameter Name | Type | Description | Required |
|---|---|---|---|
id | string | Version ID | Yes |
projectKey | string | Project Key | Yes |
Success Response Example
{
"message": "success"
}
2
3


